libgd: import from oldpackages, add myself as maintainer, add license information...
authorJo-Philipp Wich <[email protected]>
Wed, 2 Jul 2014 14:10:14 +0000 (16:10 +0200)
committerJo-Philipp Wich <[email protected]>
Wed, 2 Jul 2014 14:12:44 +0000 (16:12 +0200)
Signed-off-by: Jo-Philipp Wich <[email protected]>
libs/libgd/Makefile [new file with mode: 0644]
libs/libgd/patches/101-gdlib-config.patch [new file with mode: 0644]
libs/libgd/patches/200-uclibc-ceill.patch [new file with mode: 0644]

diff --git a/libs/libgd/Makefile b/libs/libgd/Makefile
new file mode 100644 (file)
index 0000000..cafd775
--- /dev/null
@@ -0,0 +1,79 @@
+#
+# Copyright (C) 2006-2014 OpenWrt.org
+#
+# This is free software, licensed under the GNU General Public License v2.
+# See /LICENSE for more information.
+#
+
+include $(TOPDIR)/rules.mk
+
+PKG_NAME:=libgd
+PKG_VERSION:=2.1.0
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
+PKG_SOURCE_URL:=https://bitbucket.org/libgd/gd-libgd/downloads
+PKG_MD5SUM:=03588159bf4faab9079849c8d709acc6
+PKG_MAINTAINER:=Jo-Philipp Wich <[email protected]>
+PKG_LICENSE:=MIT
+
+PKG_FIXUP:=autoreconf
+
+PKG_INSTALL:=1
+PKG_BUILD_PARALLEL:=1
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/libgd
+  SECTION:=libs
+  CATEGORY:=Libraries
+  DEPENDS:=+libjpeg +libpng
+  TITLE:=The GD graphics library
+  URL:=http://www.libgd.org/
+endef
+
+define Package/libgd/description
+  GD is an open source code library for the dynamic creation of images by
+  programmers. GD creates PNG, JPEG and GIF images, among other formats.
+endef
+
+TARGET_CFLAGS += $(FPIC)
+
+CONFIGURE_ARGS += \
+       --enable-shared \
+       --enable-static \
+       --disable-rpath \
+       --without-x \
+       --without-fontconfig \
+       --without-freetype \
+       --with-jpeg=$(STAGING_DIR)/usr \
+       --with-png=$(STAGING_DIR)/usr \
+       --without-xpm \
+       --without-iconv
+
+CONFIGURE_VARS += \
+       LIBPNG12_CONFIG="$(STAGING_DIR)/host/bin/libpng12-config" \
+       ac_cv_header_iconv_h=no
+
+define Build/InstallDev
+       $(INSTALL_DIR) $(1)/usr/bin
+       $(CP) $(PKG_INSTALL_DIR)/usr/bin/gdlib-config $(1)/usr/bin/
+       $(SED) \
+               's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' \
+               $(1)/usr/bin/gdlib-config
+       $(INSTALL_DIR) $(1)/usr/include
+       $(CP) $(PKG_INSTALL_DIR)/usr/include/entities.h $(1)/usr/include/
+       $(CP) $(PKG_INSTALL_DIR)/usr/include/gd{,_io,cache,fontg,fontl,fontmb,fonts,fontt,fx}.h \
+               $(1)/usr/include/
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgd.{a,la,so*} $(1)/usr/lib/
+       $(INSTALL_DIR) $(2)/bin
+       $(LN) ../../usr/bin/gdlib-config $(2)/bin/
+endef
+
+define Package/libgd/install
+       $(INSTALL_DIR) $(1)/usr/lib
+       $(CP) $(PKG_INSTALL_DIR)/usr/lib/libgd.so.* $(1)/usr/lib/
+endef
+
+$(eval $(call BuildPackage,libgd))
diff --git a/libs/libgd/patches/101-gdlib-config.patch b/libs/libgd/patches/101-gdlib-config.patch
new file mode 100644 (file)
index 0000000..e51502c
--- /dev/null
@@ -0,0 +1,20 @@
+--- a/config/gdlib-config.in
++++ b/config/gdlib-config.in
+@@ -71,7 +71,7 @@ while test $# -gt 0; do
+       echo @LDFLAGS@
+       ;;
+     --libs)
+-      echo -lgd @LIBS@ @LIBICONV@
++      echo -lgd @LIBS@
+       ;;
+     --cflags|--includes)
+       echo -I@includedir@
+@@ -84,7 +84,7 @@ while test $# -gt 0; do
+       echo "includedir: $includedir"
+       echo "cflags:     -I@includedir@"
+       echo "ldflags:    @LDFLAGS@"
+-      echo "libs:       @LIBS@ @LIBICONV@"
++      echo "libs:       @LIBS@"
+       echo "libdir:     $libdir"
+       echo "features:   @FEATURES@"
+       ;;
diff --git a/libs/libgd/patches/200-uclibc-ceill.patch b/libs/libgd/patches/200-uclibc-ceill.patch
new file mode 100644 (file)
index 0000000..8d2aa12
--- /dev/null
@@ -0,0 +1,24 @@
+--- a/src/gd_bmp.c
++++ b/src/gd_bmp.c
+@@ -21,6 +21,7 @@
+ #include <math.h>
+ #include <string.h>
+ #include <stdlib.h>
++#include <features.h>
+ #include "gd.h"
+ #include "gdhelpers.h"
+ #include "bmp.h"
+@@ -42,6 +43,13 @@ static int bmp_read_rle(gdImagePtr im, g
+ #define BMP_DEBUG(s)
++#if defined(__UCLIBC__) && !defined(__UCLIBC_HAS_LONG_DOUBLE_MATH__)
++long double ceill(long double x)
++{
++      return (long double)ceil((double)x);
++}
++#endif
++
+ static int gdBMPPutWord(gdIOCtx *out, int w)
+ {
+       /* Byte order is little-endian */